package com.mldong.modules.sys.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.mldong.base.CommonPage;
import com.mldong.modules.sys.dto.MenuPageParam;
import com.mldong.modules.sys.dto.MenuParam;
import com.mldong.modules.sys.dto.SyncRouteParam;
import com.mldong.modules.sys.entity.Menu;
import com.mldong.modules.sys.vo.MenuVO;

import java.util.List;

/**
 * <p>
 * 菜单 服务类
 * </p>
 *
 * @author mldong
 * @since 2022-10-18
 */
public interface MenuService extends IService<Menu> {
  /**
  * 添加菜单
  * @param param
  * @return
  */
  public boolean save(MenuParam param);

  /**
  * 更新菜单
  * @param param
  * @return
  */
  public boolean update(MenuParam param);

  /**
  * 自定义分页查询菜单
  * @param param
  * @return
  */
  CommonPage<MenuVO> page(MenuPageParam param);
  /**
   * 通过id查询
   * @param id
   * @return
   */
  MenuVO findById(Long id);
  /**
   * 同步前端路由
   * @param appCode
   * @param paramList
   */
  void syncRoute(String appCode,List<SyncRouteParam> paramList);
}
